If there is a grab, but no grab-cursor, use the cursor from the grabbed
authorAlexander Larsson <alexl@redhat.com>
Wed, 29 Nov 2000 12:52:41 +0000 (12:52 +0000)
committerAlexander Larsson <alexl@src.gnome.org>
Wed, 29 Nov 2000 12:52:41 +0000 (12:52 +0000)
2000-11-29  Alexander Larsson  <alexl@redhat.com>

* gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
a grab, but no grab-cursor, use the cursor from the grabbed
window. (gdk_fb_window_send_crossing_events): Send normal
enter/leave notifications if grab and owner_events == TRUE.

ChangeLog
ChangeLog.pre-2-0
ChangeLog.pre-2-10
ChangeLog.pre-2-2
ChangeLog.pre-2-4
ChangeLog.pre-2-6
ChangeLog.pre-2-8
gdk/linux-fb/gdkinput-ps2.c

index 39f6ec16d6520168ae571bafa8d7a38264ee2bac..e52ac1b44c36a287f05b4843723dd3815a2a651d 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2000-11-29  Alexander Larsson  <alexl@redhat.com>
+
+       * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
+       a grab, but no grab-cursor, use the cursor from the grabbed
+       window. (gdk_fb_window_send_crossing_events): Send normal
+       enter/leave notifications if grab and owner_events == TRUE.
+
 2000-11-29  Alexander Larsson  <alexl@redhat.com>
 
        * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
index 39f6ec16d6520168ae571bafa8d7a38264ee2bac..e52ac1b44c36a287f05b4843723dd3815a2a651d 100644 (file)
@@ -1,3 +1,10 @@
+2000-11-29  Alexander Larsson  <alexl@redhat.com>
+
+       * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
+       a grab, but no grab-cursor, use the cursor from the grabbed
+       window. (gdk_fb_window_send_crossing_events): Send normal
+       enter/leave notifications if grab and owner_events == TRUE.
+
 2000-11-29  Alexander Larsson  <alexl@redhat.com>
 
        * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
index 39f6ec16d6520168ae571bafa8d7a38264ee2bac..e52ac1b44c36a287f05b4843723dd3815a2a651d 100644 (file)
@@ -1,3 +1,10 @@
+2000-11-29  Alexander Larsson  <alexl@redhat.com>
+
+       * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
+       a grab, but no grab-cursor, use the cursor from the grabbed
+       window. (gdk_fb_window_send_crossing_events): Send normal
+       enter/leave notifications if grab and owner_events == TRUE.
+
 2000-11-29  Alexander Larsson  <alexl@redhat.com>
 
        * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
index 39f6ec16d6520168ae571bafa8d7a38264ee2bac..e52ac1b44c36a287f05b4843723dd3815a2a651d 100644 (file)
@@ -1,3 +1,10 @@
+2000-11-29  Alexander Larsson  <alexl@redhat.com>
+
+       * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
+       a grab, but no grab-cursor, use the cursor from the grabbed
+       window. (gdk_fb_window_send_crossing_events): Send normal
+       enter/leave notifications if grab and owner_events == TRUE.
+
 2000-11-29  Alexander Larsson  <alexl@redhat.com>
 
        * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
index 39f6ec16d6520168ae571bafa8d7a38264ee2bac..e52ac1b44c36a287f05b4843723dd3815a2a651d 100644 (file)
@@ -1,3 +1,10 @@
+2000-11-29  Alexander Larsson  <alexl@redhat.com>
+
+       * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
+       a grab, but no grab-cursor, use the cursor from the grabbed
+       window. (gdk_fb_window_send_crossing_events): Send normal
+       enter/leave notifications if grab and owner_events == TRUE.
+
 2000-11-29  Alexander Larsson  <alexl@redhat.com>
 
        * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
index 39f6ec16d6520168ae571bafa8d7a38264ee2bac..e52ac1b44c36a287f05b4843723dd3815a2a651d 100644 (file)
@@ -1,3 +1,10 @@
+2000-11-29  Alexander Larsson  <alexl@redhat.com>
+
+       * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
+       a grab, but no grab-cursor, use the cursor from the grabbed
+       window. (gdk_fb_window_send_crossing_events): Send normal
+       enter/leave notifications if grab and owner_events == TRUE.
+
 2000-11-29  Alexander Larsson  <alexl@redhat.com>
 
        * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
index 39f6ec16d6520168ae571bafa8d7a38264ee2bac..e52ac1b44c36a287f05b4843723dd3815a2a651d 100644 (file)
@@ -1,3 +1,10 @@
+2000-11-29  Alexander Larsson  <alexl@redhat.com>
+
+       * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
+       a grab, but no grab-cursor, use the cursor from the grabbed
+       window. (gdk_fb_window_send_crossing_events): Send normal
+       enter/leave notifications if grab and owner_events == TRUE.
+
 2000-11-29  Alexander Larsson  <alexl@redhat.com>
 
        * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
index 420b8645fc47ae1544a272f0717d2680c7a0ef11..d6119ee5b5943d50336cda027040cd2b7cfd1b9d 100644 (file)
@@ -388,8 +388,18 @@ move_pointer (MouseDevice *mouse, GdkWindow *in_window)
 
   gdk_fb_cursor_hide ();
 
-  if (_gdk_fb_pointer_grab_window && _gdk_fb_pointer_grab_cursor)
-    the_cursor = _gdk_fb_pointer_grab_cursor;
+  if (_gdk_fb_pointer_grab_window)
+    {
+      if (_gdk_fb_pointer_grab_cursor)
+       the_cursor = _gdk_fb_pointer_grab_cursor;
+      else
+       {
+         GdkWindow *win = _gdk_fb_pointer_grab_window;
+         while (!GDK_WINDOW_IMPL_FBDATA (win)->cursor && GDK_WINDOW_OBJECT (win)->parent)
+           win = (GdkWindow *)GDK_WINDOW_OBJECT (win)->parent;
+         the_cursor = GDK_WINDOW_IMPL_FBDATA (win)->cursor;
+       }
+    }
   else
     {
       while (!GDK_WINDOW_IMPL_FBDATA (in_window)->cursor && GDK_WINDOW_P (in_window)->parent)
@@ -444,7 +454,7 @@ gdk_fb_window_send_crossing_events (GdkWindow *dest,
   /* When grab in progress only send normal crossing events about
    * the grabbed window.
    */
-  only_grabbed_window = (_gdk_fb_pointer_grab_window != NULL) &&
+  only_grabbed_window = (_gdk_fb_pointer_grab_window_events != NULL) &&
                         (mode == GDK_CROSSING_NORMAL);
   
   if (a==b)